home *** CD-ROM | disk | FTP | other *** search
/ Amiga Plus 2002 #3 / Amiga Plus CD - 2002 - No. 03.iso / AmigaPlus / Games / CrossfireII_Demo / mission / XCompilerScript00 < prev    next >
Text File  |  2003-02-23  |  13KB  |  772 lines

  1. // Tutorial-Mission: gaaaanz vorsichtig den Leuten das Fliegen beibringen
  2.  
  3. // Blabla ausgeben
  4. LadeBild "Mission/Bild00_1"
  5. ZeigeText 1
  6. Einblenden
  7. WarteTaste
  8. Ausblenden
  9.  
  10. LadeRaumer 76   // Tutorial-Spielerraumer ohne Standardwaffe
  11. LadeRaumer 77   // Tutorialdrohne
  12. LadeRaumer RebelFighter2
  13. LadeRaumer RebelFighter3
  14.  
  15. // Mission laden
  16. StartMission 0
  17. // Ich glaub nich, daß jemals jemand stirbt in dieser Mission
  18. NewShip 105, 76, , 0, 1, WirTot
  19. SetVar RS_Schatten( 0), 10
  20.  
  21. // Steuerung retten
  22. SetVar Z, RS_Steuerung( 0)
  23. // und den Spieler willig schalten
  24. ChgCtrl 0, DummSchlumpf
  25. // und reinkommen lassen
  26. ChgAim 0, , 94
  27.  
  28. SpieleMusik "Musik/Story6"
  29.  
  30. Wait 50
  31. Text 213, 50, 4
  32. Wait 60
  33. Text 213, 50, 5
  34. Wait 70
  35.  
  36. Text 1, 50, 6, 0
  37. Wait 90
  38.  
  39. Text 213, 50, 7
  40. Wait 60
  41. Text 213, 50, 8
  42. Wait 30
  43. ChgCtrl 0, Patrol
  44. Wait 50
  45.  
  46. Text 1, 50, 9, 0
  47. Wait 80
  48.  
  49. Text 213, 50, 10
  50. Wait 60
  51. Text 213, 50, 11
  52. Wait 90
  53.  
  54. Text 213, 50, 12
  55. Wait 60
  56. Text 213, 50, 13
  57. Wait 80
  58.  
  59. Text 213, 50, 14
  60. Wait 60
  61. Text 213, 100, 15
  62. Wait 110
  63. Text 213, 50, 16
  64. Wait 60
  65. Text 213, 50, 87
  66. Wait 30
  67. HelpMenu
  68. Wait 80
  69.  
  70. Text 213, 50, 17
  71. Wait 80
  72. Text 1, 50, 18, 0
  73. Wait 80
  74. Text 213, 50, 19
  75.  
  76. Wait 30
  77. // Blinken lassen und Steuerung zurücksetzen
  78. NeuObjekt RS_PosX( 0), RS_PosY(0), 0, 0, 389, TranspAdd
  79. SetVar RS_Steuerung(0), Z
  80. // Spielerposition retten
  81. SetVar A, RS_PosX( 0)
  82. SetVar B, RS_PosY( 0)
  83.  
  84. Wait 60
  85. Text 213, 50, 20
  86. Wait 60
  87. Text 213, 50, 21
  88. Wait 100
  89.  
  90. Text 213, 50, 22
  91. Wait 60
  92. Text 213, 50, 23
  93. Wait 60
  94. Text 213, 50, 24
  95. Wait 90
  96.  
  97. // hat er sich seitdem nennenswert bewegt?
  98. Sub A, RS_PosX( 0)
  99. Div A, 256
  100. Mul A, A
  101. Sub B, RS_PosY( 0)
  102. Div B, 256
  103. Mul B, B
  104.  
  105. Add A, B
  106.  
  107. if(A < 400) {
  108.   // wenn nich, zutexten
  109.   Text 213, 50, 25
  110.   Wait 60
  111.   Text 213, 50, 26
  112.   Wait 90
  113.   Text 213, 50, 27
  114.   Wait 80
  115.   }
  116.  
  117. // Ziel erklären
  118. Text 213, 50, 28
  119. Wait 60
  120. Text 213, 50, 29
  121.  
  122. // Zähler initialisieren
  123. SetVar A, 0
  124. Dauerpfeil 62720, 109824
  125. SetMarke ErstesZiel
  126.  
  127. Wait 10
  128. Add A, 1
  129. NeuObjekt 62720, 109824, 0, 0, GrauKreis, TranspAdd
  130.  
  131. // "los jetzt" sagen
  132. if(A = 4) {
  133.   Text 213, 50, 30
  134.   }
  135.  
  136. // Nähe zur Zielpos ausrechnen
  137. SetVar X, RS_PosX( 0)
  138. Sub X, 62720
  139. Div X, 256
  140. Mul X, X
  141.  
  142. SetVar Y, RS_PosY( 0)
  143. Sub Y, 109824
  144. Div Y, 256
  145. Mul Y, Y
  146.  
  147. Add X, Y
  148.  
  149. // zu weit weg -> weiterwarten
  150. if(X > 400) { Goto ErstesZiel }
  151.  
  152. // Wir sind da -> Wieder Steuerung totschalten
  153. NeuObjekt RS_PosX( 0), RS_PosY(0), 0, 0, 389, TranspAdd
  154. NewShip , 83, , 0, 1, WirTot
  155. Dauerpfeil
  156.  
  157. Wait 20
  158. Text 213, 50, 32
  159. Wait 60
  160. Text 213, 50, 33
  161. Wait 30
  162.  
  163. SetVar A, 0  // Zeitzähler
  164. SetVar B, 0  // -1 für warten, sonst rundennummer
  165. SetVar C, 1  // aktuell anzusteuernder Punkt
  166. SetVar X, 21248  // Position dieses Punktes
  167. SetVar Y, 101376
  168.  
  169. SetMarke Runde
  170.  
  171. Wait 1
  172. Add A, 1
  173.  
  174. // Evtl. texten
  175. if(A = 30) {
  176.   Text 213, 50, 34
  177.   }
  178.  
  179. if(A = 75) {
  180.   Text 213, 50, 35
  181.   SpieleMusik "Musik/Story1"
  182.   }
  183.  
  184. if(A = 135) {
  185.   Text 213, 50, 36
  186.   }
  187.  
  188. if(A = 180) {
  189.   Text 213, 50, 37
  190.   NewShip , 76, , 0, 1, WirTot
  191.   NeuObjekt RS_PosX(0), RS_PosY(0), 0, 0, 389, TranspAdd
  192.   SetVar B, 0
  193.   }
  194.  
  195. // welcher Kreis soll grade angezeigt werden?
  196. if(A < 180) {
  197.   // während Vorbereitungszeit den ganzen Kurs blinken lassen
  198.   SetVar D, A
  199.   SetVar E, D
  200.   Div E, 12
  201.   Mul E, 12
  202.   Sub D, E
  203.   }
  204.  
  205. // während des eigentlichen Rennens nur nächsten Punkt anzeigen
  206. if(A > 179) {
  207.   SetVar D, A
  208.   Div D, 7
  209.   Mul D, 7
  210.   if(D ! A) {
  211.     Goto Noe
  212.     }
  213.  
  214.   SetVar D, C
  215.   }
  216.  
  217. if(D = 0) { NeuObjekt 62720, 109824, 0, 0, GrauKreis, TranspAdd }
  218. if(D = 1) { NeuObjekt 21248, 101376, 0, 0, GrauKreis, TranspAdd }
  219. if(D = 2) { NeuObjekt 25600, 68352, 0, 0, GrauKreis, TranspAdd }
  220. if(D = 3) { NeuObjekt 44800, 55296, 0, 0, GrauKreis, TranspAdd }
  221. if(D = 4) { NeuObjekt 71168, 61696, 0, 0, GrauKreis, TranspAdd }
  222. if(D = 5) { NeuObjekt 93440, 83200, 0, 0, GrauKreis, TranspAdd }
  223. if(D = 6) { NeuObjekt 98000, 109824, 0, 0, GrauKreis, TranspAdd }
  224. if(D = 7) { NeuObjekt 119808, 127488, 0, 0, GrauKreis, TranspAdd }
  225. if(D = 8) { NeuObjekt 117248, 176640, 0, 0, GrauKreis, TranspAdd }
  226. if(D = 9) { NeuObjekt 74752, 162304, 0, 0, GrauKreis, TranspAdd }
  227. if(D = 10) { NeuObjekt 81920, 139008, 0, 0, GrauKreis, TranspAdd }
  228. if(D = 11) { NeuObjekt 80128, 115712, 0, 0, GrauKreis, TranspAdd }
  229.  
  230. SetMarke Noe
  231.  
  232. // auf aktuellen Checkpoint vergleichen
  233. if(B > -1) {
  234.   SetVar I, RS_PosX( 0)
  235.   Sub I, X
  236.   Div I, 256
  237.   Mul I, I
  238.  
  239.   SetVar J, RS_PosY( 0)
  240.   Sub J, Y
  241.   Div J, 256
  242.   Mul J, J
  243.  
  244.   Add I, J
  245.  
  246.   // nah genug am Punkt
  247.   if(I < 1000) {
  248.     // aktuellen aufblitzen lassen
  249.     NeuObjekt X, Y, 0, 0, 389, TranspAdd
  250.  
  251.     // nächsten Punkt anwählen
  252.     Add C, 1
  253.     if( C>11) { SetVar C, 0 }
  254.  
  255.     if(C = 0) {
  256.       SetVar X, 62720
  257.       SetVar Y, 109824
  258.       Add B, 1
  259.       Text 213, 50, 43, , B
  260.       }
  261.  
  262.     if(C = 0) { SetVar X, 62720  SetVar Y, 109824 }
  263.     if(C = 1) { SetVar X, 21248  SetVar Y, 101376 }
  264.     if(C = 2) { SetVar X, 25600  SetVar Y, 68352 }
  265.     if(C = 3) { SetVar X, 44800  SetVar Y, 55296 }
  266.     if(C = 4) { SetVar X, 71168  SetVar Y, 61696 }
  267.     if(C = 5) { SetVar X, 93440  SetVar Y, 83200 }
  268.     if(C = 6) { SetVar X, 95744  SetVar Y, 109824 }
  269.     if(C = 7) { SetVar X, 119808  SetVar Y, 127488 }
  270.     if(C = 8) { SetVar X, 117248  SetVar Y, 176640 }
  271.     if(C = 9) { SetVar X, 74752  SetVar Y, 162304 }
  272.     if(C = 10) { SetVar X, 81920  SetVar Y, 139008 }
  273.     if(C = 11) { SetVar X, 80128  SetVar Y, 115712 }
  274.  
  275.     // neue Stelle auch gleich markieren
  276.     NeuObjekt X, Y, 0, 0, GrauKreis, TranspAdd
  277.     }
  278.   }
  279.  
  280. // solange weiterzählen, bis zwei Runden geschafft sind
  281. if(B < 2) { Goto Runde }
  282.  
  283. NeuObjekt RS_PosX( 0), RS_PosY(0), 0, 0, 389, TranspAdd
  284. SetVar RS_Steuerung( 0), Computer1
  285. SpieleMusik "Musik/Story6"
  286.  
  287. Wait 70
  288.  
  289. // Zeit ausrechnen
  290. Sub A, 180
  291. Div A, 10
  292.  
  293. // und je nach Zeit labern
  294. if( A<35) {
  295.   Text 213, 50, 38, , A
  296.   Goto LaberFertig
  297.   }
  298. if( A<40) {
  299.   Text 213, 50, 39, , A
  300.   Goto LaberFertig
  301.   }
  302. if( A<45) {
  303.   Text 213, 50, 40, , A
  304.   Goto LaberFertig
  305.   }
  306. if( A<50) {
  307.   Text 213, 50, 41, , A
  308.   Goto LaberFertig
  309.   }
  310.  
  311. Text 213, 50, 42, , A
  312.  
  313. SetMarke LaberFertig
  314.  
  315. // jetzt gehts zum Ballern
  316. Wait 90
  317. Text 213, 50, 44
  318. Wait 60
  319. Text 213, 50, 45
  320. Wait 30
  321. NeuObjekt RS_PosX(0), RS_PosY(0), 0, 0, 389, TranspAdd
  322. AddWaffe 0, 1
  323.  
  324. Wait 30
  325. Text 213, 50, 46
  326. Wait 60
  327. Text 213, 50, 47
  328.  
  329. Wait 20
  330.  
  331. // Anzahl Drohnen
  332. SetVar C, 0
  333.  
  334. // zehn Drohnen erzeugen
  335. SetMarke GenDrohne1
  336. SetVar A, C
  337. Add A, 104
  338. SetVar B, C
  339. Add B, 10
  340.  
  341. NewShip A, 77, Patrol, B, 2, DrohneTot
  342. SetVar RS_Schatten( B), 10
  343. Add C, 1
  344. Wait 2
  345. if(C < 10) { Goto GenDrohne1 }
  346.  
  347. // Warten, bis alle abgeschossen sind
  348. SetVar RS_Steuerung( 0), Z
  349. NeuObjekt RS_PosX(0), RS_PosY(0), 0, 0, 389, TranspAdd
  350.  
  351. Wait 20
  352. Text 213, 50, 48
  353.  
  354. SetMarke DrohnenEins
  355.  
  356. Wait 10
  357. if(C > 0) { Goto DrohnenEins }
  358.  
  359. // Waffenblabla loswerden
  360. Text 1, 50, 50, 0
  361. Wait 80
  362.  
  363. Text 213, 60, 51
  364. Wait 70
  365. Text 213, 50, 52
  366. Wait 40
  367.  
  368. // drei Packen Raketen geben
  369. NeuObjekt RS_PosX(0), RS_PosY( 0), 0, 0, 389, TranspAdd
  370. AddWaffe 0, 3   AddWaffe 0, 3  AddWaffe 0, 3
  371.  
  372. Wait 20
  373.  
  374. // zehn neue Drohnen generieren
  375. SetVar C, 0
  376.  
  377. SetMarke GenDrohne2
  378. SetVar A, C
  379. Add A, 104
  380. SetVar B, C
  381. Add B, 10
  382.  
  383. NewShip A, 77, Patrol, B, 2, DrohneTot
  384. SetVar RS_Schatten( B), 10
  385. Add C, 1
  386. Wait 2
  387. if(C < 10) { Goto GenDrohne2 }
  388.  
  389. Text 213, 50, 53
  390.  
  391. // und diese schlachten lassen
  392. SetMarke DrohnenZwei
  393.  
  394. Wait 10
  395. if(C > 0) { Goto DrohnenZwei }
  396.  
  397. // Steuerung wieder totschalten
  398. SetVar RS_Steuerung( 0), Computer1
  399. NeuObjekt RS_PosX(0), RS_PosY(0), 0, 0, 389, TranspAdd
  400.  
  401. // finales Metzelgelaber
  402. Text 1, 30, 54, 0
  403. Wait 60
  404. Text 213, 50, 55
  405. Wait 60
  406. Text 213, 50, 56
  407. Wait 80
  408.  
  409. // Versteckgelaber
  410. Text 213, 50, 57
  411. Wait 60
  412. Text 213, 50, 58
  413. Wait 70
  414.  
  415. SetVar RS_Steuerung( 0), Z
  416. NeuObjekt RS_PosX(0), RS_PosY(0), 0, 0, 389, TranspAdd
  417.  
  418. SetVar C, -1   // Anzahl bereits vergeigter Versuche
  419. SetVar A, 0   // vergangene Zeit
  420.  
  421. // ab hier geht die Sucherei los
  422. SetMarke VersteckSpiel
  423.  
  424. Add C, 1
  425.  
  426. if(C = 0) {
  427.   // erster Versuch -> Leute generieren
  428.   Text 213, 50, 59
  429.   Dauerpfeil 93440, 139008
  430.  
  431.   Wait 20
  432.  
  433.   // Sucher reinkommen lassen
  434.   NewShip 110, RebelFighter2, DummSchlumpf, 10, 2
  435.   SetVar RS_Schatten( 10), 9
  436.   ChgCtrl 10, DummSchlumpf, , Treffer
  437.   ChgAim 10, , 60
  438.  
  439.   NewShip 110, RebelFighter3, DummSchlumpf, 11, 2
  440.   SetVar RS_Schatten( 11), 8
  441.   Add RS_PosY( 11), 7000
  442.   ChgCtrl 11, DummSchlumpf, , Treffer
  443.   ChgAim 11, , 102
  444.   }
  445.  
  446. // nach evtl. Fehlern zurückkommandieren
  447. if(C > 0) {
  448.   Text 213, 50, 64
  449.   ChgCtrl 10, DummSchlumpf, , Treffer
  450.   ChgAim 10, , 60
  451.   ChgCtrl 11, Dummschlumpf, , Treffer
  452.   ChgAim 11, , 102
  453.   }
  454.  
  455. // Warten bis alle auf ihren Plätzen sind
  456. SetVar E, 0
  457. SetVar F, 0
  458. SetVar G, 0
  459. SetMarke VersteckInit
  460.  
  461. NeuObjekt 93440, 139008, 0, 0, GrauKreis, TranspAdd
  462. Wait 20
  463.  
  464. SetVar X, RS_PosX( 0)
  465. Sub X, 93440
  466. Div X, 256
  467. Mul X, X
  468.  
  469. SetVar Y, RS_PosY( 0)
  470. Sub Y, 139008
  471. Div Y, 256
  472. Mul Y, Y
  473.  
  474. Add X, Y
  475.  
  476. if(X < 400) { SetVar E, 1 }
  477. if(RS_NaherLP( 10) = 60) { SetVar F, 1 }
  478. if(RS_NaherLP( 11) = 102) { SetVar G, 1 }
  479.  
  480. if(E = 0) { Goto VersteckInit }
  481. if(F = 0) { Goto VersteckInit }
  482. if(G = 0) { Goto VersteckInit }
  483.  
  484. Dauerpfeil
  485.  
  486. // Zwischenaktionen
  487. if(C = 0) {
  488.   // beim ersten Mal Sucher vorstellen und blinken lassen
  489.   Text 213, 60, 60
  490.   Wait 20
  491.   NeuObjekt RS_PosX( 10), RS_PosY( 10), 0, 0, GrauKreis, TranspAdd
  492.   Wait 10
  493.   NeuObjekt RS_PosX( 11), RS_PosY( 11), 0, 0, GrauKreis, TranspAdd
  494.   }
  495.  
  496. // beim zweiten Mal etwas deutlicher werden
  497. if(C = 1) {
  498.   Text 213, 50, 65
  499.   }
  500.  
  501. // beim dritten Mal Ordnungsgong
  502. if(C = 2) {
  503.   Text 213, 50, 66
  504.   }
  505.  
  506. Wait 20
  507. // Sucher auf Patrouille schicken
  508. ChgCtrl 10, Patrol, Sicht, Treffer
  509. ChgCtrl 11, Patrol, Sicht, Treffer
  510.  
  511. if(C=0) {
  512.   SpieleMusik "Musik/Story2"
  513.   }
  514.  
  515. // Entdeckt-Flag nullen
  516. SetVar D, 0
  517. // Zeit zurücksetzen
  518. SetVar A, 0
  519.  
  520. // ab jetzt läuft die Zeit
  521. SetMarke VersteckDreh
  522.  
  523. Add A, 1
  524. Wait 10
  525.  
  526. // erster Versuch -> nähere Erläuterungen
  527. if(C = 0) {
  528.   if(A = 2) {
  529.     Text 213, 50, 61
  530.     }
  531.  
  532.   if(A = 9) {
  533.     Text 213, 50, 62
  534.     }
  535.   }
  536.  
  537. // solange kreisen bis entdeckt oder Zeit vorrüber
  538. if(D = 0) {
  539.   if(A < 120) {
  540.     Goto VersteckDreh
  541.     }
  542.   }
  543.  
  544. // wurde der Spieler entdeckt?
  545. if(D = 1) {
  546.   // beim ersten Mal Simpelspruch
  547.   if(C = 0) {
  548.     Text 240, 50, 63
  549.     Wait 70
  550.     Goto VersteckSpiel
  551.     }
  552.  
  553.   // beim zweiten Mal deutlicher werden
  554.   if(C = 1) {
  555.     Text 213, 50, 67
  556.     Wait 70
  557.     Goto VersteckSpiel
  558.     }
  559.  
  560.   // beim dritten Mal abbrechen
  561.   if(C = 2) {
  562.     Text 213, 50, 68
  563.     Wait 70
  564.     Text 213, 60, 69
  565.     Wait 70
  566.     Text 213, 50, 70
  567.     Wait 80
  568.     }
  569.   }
  570.  
  571. if(D = 2) {
  572.   // Abbruch durch Beschuss... gaaanz finster
  573.   Text 213, 50, 73
  574.   Wait 70
  575.   Goto VersteckSpiel
  576.   }
  577.  
  578. if(D = 0) {
  579.   // nicht entdeckt wurden -> Lob
  580.   Text 213, 60, 71
  581.   ChgCtrl 10, Computer1, , Treffer
  582.   ChgCtrl 11, Computer1, , Treffer
  583.   Wait 80
  584.   }
  585.  
  586. SpieleMusik "Musik/Story6"
  587.  
  588. // die Sucher zurückbeordern
  589. Text 213, 50, 72
  590. Wait 40
  591.  
  592. ChgCtrl 10, DummSchlumpf, , Treffer
  593. ChgAim 10, , 110
  594. ChgCtrl 11, DummSchlumpf, , Treffer
  595. ChgAim 11, , 110
  596.  
  597. Wait 60
  598.  
  599. Text 213, 50, 74
  600.  
  601. // warten, bis sie zurück sind
  602. SetVar A, 2
  603. SetVar B, 0
  604.  
  605. SetMarke SuchDreh
  606. Wait 5
  607. Add B, 1
  608.  
  609. if(RS_NaherLP( 10) = 110) {
  610.   SetVar RS_Team( 10), 0
  611.   Sub A, 1
  612.   }
  613. if(RS_NaherLP( 11) = 110) {
  614.   SetVar RS_Team( 11), 0
  615.   Sub A, 1
  616.   }
  617.  
  618. // Texten derweil
  619. if(B = 12) {
  620.   Text 213, 50, 75
  621.   }
  622.  
  623. if(B = 24) {
  624.   Text 213, 50, 76
  625.   }
  626.  
  627. if(B = 36) {
  628.   Text 213, 50, 77
  629.   }
  630.  
  631. // Waffen geben
  632. if(B = 50) {
  633.   Text 213, 50, 78
  634.  
  635.   // alte Waffen rauswerfen
  636.   NewShip , Transporter1, , 0, 1, WirTot
  637.   NewShip , 76, , 0, 1, WirTot
  638.  
  639.   // neue Waffen geben
  640.   AddWaffe 0, 1
  641.   AddWaffe 0, 17  AddWaffe 0, 17
  642.   AddWaffe 0, 3  AddWaffe 0, 3
  643.  
  644.   // blinken
  645.   NeuObjekt RS_PosX(0), RS_PosY( 0), 0, 0, 389, TranspAdd
  646.   }
  647.  
  648. if(B = 62) {
  649.   Text 213, 50, 79
  650.   }
  651.  
  652. if(A > 0) { Goto SuchDreh }
  653. if(B < 62) { Goto SuchDreh }
  654.  
  655. // Text vergehen lassen
  656. Wait 30
  657. NewShip 110, RebelBomber3, DummSchlumpf, 10, 2
  658. SetVar RS_Schatten( 10), 10
  659. ChgAim 10, , 60
  660. AddWaffe 10, 7 AddWaffe 10, 7
  661. AddWaffe 10, 16 AddWaffe 10, 16
  662.  
  663. SpieleMusik "Musik/Story3"
  664.  
  665. Wait 40
  666. // Fight!
  667. Text 213, 50, 80, 10
  668. ChgCtrl 10, Computer5
  669.  
  670. // warten, bis einer knapp an Energie ist
  671. SetVar A, 0
  672. SetVar C, 0
  673. SetMarke KampfDreh
  674.  
  675. Wait 2
  676. Add A, 1
  677.  
  678. if(RS_Energie( 0) < 40) {
  679.   Text 213, 50, 82, 10
  680.   SetVar C, 1
  681.   }
  682.  
  683. if( RS_Energie( 10) < 40) {
  684.   Text 213, 50, 81, 10
  685.   SetVar C, 2
  686.   }
  687.  
  688. if(C = 0) { Goto KampfDreh }
  689.  
  690. // Waffen wegnehmen
  691. NeuObjekt RS_PosX(0), RS_PosY( 0), 0, 0, 389, TranspAdd
  692. SetVar RS_Steuerung( 0), Computer1
  693.  
  694. // Gegner stillschalten
  695. ChgCtrl 10, Computer1
  696. SetVar RS_Team( 10), 1
  697.  
  698. Wait 80
  699. Text 213, 50, 83, 10
  700. Wait 60
  701. Text 213, 50, 84, 10
  702. Wait 80
  703. Text 1, 50, 85, 0
  704. Wait 30
  705. ZeigeInfo MSuccess
  706. Wait 30
  707. EndMission 8
  708. Wait 100
  709.  
  710. Ende
  711.  
  712.  
  713. // ************ Interupts **********
  714. SetMarke DrohneTot
  715.  
  716. Sub C, 1
  717. if(C = 5) {
  718.   Text 1, 50, 49, 0
  719.   }
  720. Return
  721.  
  722. // Die Suchenden haben den Spieler entdeckt
  723. SetMarke Sicht
  724. SetVar D, 1
  725. ChgCtrl 10, Computer1, , Treffer
  726. ChgCtrl 11, Computer1, , Treffer
  727.  
  728. // Sichtlinie markieren
  729. SetVar I, RS_PosX( A)
  730. SetVar K, RS_PosX( B)
  731. Sub K, I
  732. Div K, 20
  733.  
  734. SetVar J, RS_PosY( A)
  735. SetVar L, RS_PosY( B)
  736. Sub L, J
  737. Div L, 20
  738.  
  739. SetVar M, 0
  740. SetMarke MarkDreh
  741.  
  742. Add I, K
  743. Add J, L
  744.  
  745. NeuObjekt I, J, 0, 0, GrossRauch, TranspAdd
  746. Add M, 1
  747.  
  748. if(M < 19) { Goto MarkDreh }
  749.  
  750. Return
  751.  
  752. // Ein Suchender wurde beschossen
  753. SetMarke Treffer
  754. if(RS_Steuerung( 10) = Patrol) {
  755.   SetVar D, 2
  756.   ChgCtrl 10, Computer1
  757.   ChgCtrl 11, Computer1
  758.   }
  759.  
  760. // Waffen wegnehmen
  761. NewShip , Transporter1, , 0, 1, WirTot
  762. NewShip , 76, , 0, 1, WirTot
  763.  
  764. Return
  765.  
  766.  
  767. // falls es tatsächlich jemals einer schafft
  768. SetMarke WirTot
  769. EndMission -1
  770. Ende
  771.  
  772.